home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er
/
64ER_CD.iso
/
94xx
/
9403a.d64
/
giga-sedit 2.src
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
1995-03-30
|
9KB
|
726 lines
100 ;
110 ;
120 ;
130 ;
140 ; GIGA-ASS - SCROLLEDIT V2
150 ;= = = = = = = = = = = = = = = = =
160 ; CODED BY CHRISTIAN THRUM
170 ; (SKYWALKER OF SUNBEAM !)
180 ; DONE IN 1992/1993 !!
190 ;
200 ;
210 ; CHRISTIAN THRUM
220 ; SOPHIENSTR. 14
230 ; 07743 JENA
240 ; TEL: (03641)25958
250 ;
260 ; FINALLY GIGA-ASS RULES ...
270 ; LETS SCRATCH THE 'VIS-ASS'
280 ; TOGETHER !!!!
290 ; (JUST KIDDING!)
300 ;
310 ;
320 ;
330 GETPCLOSEADDY,VAL
340 MID$#VAL
350 (null)ADDY
360 NEW
370 TAB(OBJECTSTART=$7B00
380 +OBJECTSTART
390 USROBJECTSTART
400 TAB(LASTHIGH=$96
410 ;
420 ;
430 ;
440 ; INSTALL/INIT
450 ;==============================
460 ;
470 INSTALL MID$#<(FULLINIT)
480 (null)$8000
490 (null)$84D0
500 (null)$2B
510 MID$#>(FULLINIT)
520 (null)$8001
530 (null)$84D2
540 (null)$9FB8
550 (null)$82E6
560 (null)$2C
570 PEEK#<(INIT)
580 (null)$9FB7
590 (null)
600 (null)$82E5
610 PCLOSE$84AA,$60
620 (null)$8534
630 ;
640 PEEK#>(SETPGE)
650 PCLOSE$9959,<(SETPGE)
660 (null)$995A
670 PCLOSE$94D4,<(SET4)
680 (null)$971E
690 (null)$94D5
700 (null)$971F
710 PCLOSE$82C9,<(ACHECK-1)
720 (null)$82CA
730 PCLOSE$9F72,>(IRQ)
740 PCLOSE$9F75,<(IRQ)
750 PEEK#0
760 MID$INSTTEXT,X
770 (null)*+8
780 (null)$FFD2
790 (null)
800 (null)*-9
810 (null)$2D
820 (null)$33
830 PCLOSE$2E,$A0
840 PCLOSE$34,$7B
850 (null)($0302)
860 ;
870 INSTTEXT
880 NOT"[147]SAVE
890 [165]$22
900 [168]"GIGA-ASS +SEDIT
910 FN$22
920 NOT",8"
930 ;
940 ;
950 +OBJECTSTART+$A0
960 ;
970 ;
980 FULLINIT (null)$849D
990 ;
1000 INIT (null)
1010 PEEK#1
1020 (null)IRQFLAG
1030 (null)
1040 (null)$D4
1050 PEEK#$F3
1060 (null)
1070 (null)$84AB;G-INIT!
1080 MID$#<(TEXT)
1090 LEN#>(TEXT);TEXT
1100 (null)$AB1E;OUTPUT
1110 (null)$A644;NEW
1120 (null)$94BA
1130 PCLOSE$CF,0
1140 PCLOSE$DC0D,$81
1150 MID$#%00000100
1160 (null)$028D
1170 (null)*+5
1180 (null)ALOAD
1190 (null)$8537;CONT INIT
1200 ;
1210 ;
1220 ;
1230 ; IRQ-ROUTINE + KEYCHECK
1240 ;==============================
1250 ;
1260 IRQ PCLOSE$DC0D,1
1270 MID$IRQFLAG
1280 (null)NKJMP
1290 ;
1300 KEY PEEK$C5
1310 TAN#64
1320 (null)KEY1
1330 PCLOSEFFLAG,0
1340 NKJMP (null)NOKEY
1350 ;
1360 KEY1 MID$#%00000100
1370 (null)$028D
1380 (null)FKEY
1390 ;
1400 ;
1410 CKEY (null)
1420 LEN#6
1430 STR$KEYTAB,Y
1440 (null)CKEY2
1450 (null)
1460 (null)*-6
1470 (null)GFKEY
1480 CKEY2 MID$JUMPTAB2,Y
1490 (null)
1500 MID$JUMPTAB1,Y
1510 (null)
1520 (null)
1530 ;
1540 DOWNJUMP (null)DOWN
1550 UPJUMP (null)UP
1560 ;
1570 FKEY TAN#4;F1
1580 (null)UPJUMP
1590 TAN#3;F7
1600 (null)DOWNJUMP
1610 TAN#6;F5
1620 (null)MNETAB
1630 TAN#5;F3
1640 (null)NKJMP
1650 ;
1660 ;
1670 ; TABULATOR
1680 ;===============================
1690 ;
1700 LATAB (null)CHARNORM
1710 LEN#$05
1720 (null)$E50E
1730 (null)MNETAB2
1740 ;
1750 MNETAB (null)CHARNORM
1760 MID$$033E
1770 (null)
1780 VAL#$05
1790 (null)
1800 (null)$E50E
1810 MNETAB2 (null)ENDIRQ
1820 ;
1830 ;
1840 ;
1850 ; CURSOR HOME / 25TH POS
1860 ;================================
1870 ;
1880 HOME (null)CHARNORM
1890 (null)$E566
1900 HOME2 (null)NOKEY
1910 ;
1920 THPOS (null)CHARNORM
1930 PEEK#24
1940 LEN#0
1950 (null)$E50C
1960 (null)HOME2
1970 ;
1980 ;
1990 ; SCREEN-EDIT (R,S,L,C)
2000 ;===============================
2010 ;
2020 SAVE
2030 (null)GETNUMBER
2040 MID$$14
2050 (null)SAVEAD
2060 MID$$15
2070 (null)SAVEAD+1
2080 (null)$E513
2090 (null)XYPOS
2100 (null)XYPOS+1
2110 (null)ENDIRQ
2120 ;
2130 ;
2140 LOAD (null)CHECKOLD
2150 (null)LEND
2160 (null)
2170 (null)LOAD2
2180 LEND (null)ENDIRQ
2190 ;
2200 ;
2210 ALOAD (null)
2220 MID$#$FF
2230 LEN#1
2240 (null)&$2B,Y
2250 (null)$A533
2260 PEEK$23
2270 MID$$22
2280 (null)
2290 VAL#2
2300 (null)*+3
2310 (null)
2320 (null)$2D
2330 (null)$2E
2340 (null)$A660
2350 (null)
2360 (null)LOAD2
2370 PCLOSE$CF,0
2380 (null)
2390 (null)$A47B
2400 ;
2410 ;
2420 REBULID
2430 (null)CHECKOLD
2440 (null)REND
2450 (null)GETNUMBER
2460 (null)SAVEPOS
2470 (null)R2
2480 (null)LOADPOS
2490 REND (null)ENDIRQ
2500 ;
2510 ;
2520 SWAP (null)CHECKOLD
2530 (null)SEND
2540 (null)GETNUMBER
2550 MID$$14
2560 (null)
2570 MID$$15
2580 (null)
2590 MID$$D6
2600 (null)
2610 MID$$D3
2620 (null)
2630 (null)
2640 (null)LOAD2
2650 (null)
2660 (null)XYPOS
2670 (null)
2680 (null)XYPOS+1
2690 (null)
2700 (null)SAVEAD+1
2710 (null)
2720 (null)SAVEAD
2730 SEND (null)ENDIRQ
2740 ;
2750 ; SUBROUTINEN
2760 ;
2770 LOAD2 (null)NL
2780 MID$#$EA
2790 FN$2C
2800 NL MID$#$2C
2810 (null)ANL
2820 MID$SAVEAD
2830 (null)$14
2840 MID$SAVEAD+1
2850 (null)$15
2860 (null)R2
2870 (null)ENDLO
2880 LENXYPOS
2890 PEEKXYPOS+1
2900 ANL FN$2C
2910 LEN#0
2920 (null)$E50C
2930 ENDLO (null)
2940 ;
2950 R2 (null)CHARNORM
2960 PCLOSE$C7,0
2970 (null)$D4
2980 (null)$A613;CALC ADDY
2990 LEN#$01
3000 MID$($5F),Y
3010 (null)ENDREB
3020 R3 MID$#147;CLRSCR
3030 FN$2C
3040 RLOOP MID$#13;CR
3050 (null)$FFD2
3060 (null)$9A44;'?'-LINE
3070 (null)SEARCHNEX
3080 (null)ENDREB-2
3090 MID$$D6
3100 STR$#24;LAST L.?
3110 (null)RLOOP
3120 (null)
3130 FN$24
3140 ENDREB (null)
3150 (null)
3160 ;
3170 ; GET HIGHEST / LOWEST LINES
3180 ;===============================
3190 ;
3200 GET (null)CHARNORM
3210 (null)CHECKOLD
3220 (null)ENDGET
3230 (null)SAVEPOS
3240 MID$$2B
3250 (null)$5F
3260 MID$$2C
3270 (null)$60
3280 (null)CL25TH
3290 (null)
3300 (null)PRINTLINE
3310 PEEK$2E
3320 MID$$2D
3330 (null)
3340 (null)#$02
3350 (null)*+3
3360 (null)
3370 (null)$60
3380 (null)$5F
3390 (null)SEARCHBAC
3400 (null)CL1ST
3410 (null)
3420 (null)PRINTLINE
3430 (null)LOADPOS
3440 ENDGET (null)ENDIRQ
3450 ;
3460 ;
3470 ;
3480 ; SCROLLEN - HOCHWAERTS
3490 ;===============================
3500 ;
3510 UP
3520 (null)GETNUMBER
3530 (null)$A613;LINE>ADDY
3540 (null)SAVEPOS
3550 ;
3560 UP1 MID$$5F;CHECK
3570 STR$$2B;LAST
3580 (null)UP2;LINE
3590 MID$$60
3600 STR$$2C
3610 (null)UP2
3620 (null)UDEND
3630 ;
3640 UP2 (null)SEARCHBAC
3650 SCROLLU PEEK#$FF;SCROLL
3660 U1 MID$$06C0,X
3670 (null)$06E8,X
3680 (null)
3690 (null)U1
3700 MID$$06C0
3710 (null)$06E8
3720 (null)
3730 U2 MID$$05C0,X
3740 (null)$05E8,X
3750 (null)
3760 (null)U2
3770 MID$$05C0
3780 (null)$05E8
3790 (null)
3800 U3 MID$$04C0,X
3810 (null)$04E8,X
3820 (null)
3830 (null)U3
3840 MID$$04C0
3850 (null)$04E8
3860 PEEK#$C0
3870 U4 MID$$03FF,X
3880 (null)$0427,X
3890 (null)
3900 (null)U4
3910 (null)CL1ST
3920 PEEK#$17
3930 COPY1 MID$$DA,X
3940 ASC#$7F
3950 LEN$D9,X
3960 (null)*+4
3970 (null)#$80
3980 (null)$DA,X
3990 (null)
4000 (null)COPY1
4010 MID$$D9
4020 (null)#$80
4030 (null)$D9
4040 ;
4050 PCLOSE$D4,0
4060 (null)
4070 (null)PRINTLINE
4080 ;
4090 PCLOSE$DC00,$FE
4100 MID$#%00010000
4110 (null)$DC01
4120 (null)UP3
4130 (null)UP1;AGAIN
4140 UP3 (null)UDEND
4150 ;
4160 ;
4170 ;
4180 ; SCROLLEN - RUNTERWAERTS
4190 ;===============================
4200 ;
4210 ;
4220 DOWN
4230 (null)SAVEPOS
4240 (null)CHECKOLD
4250 (null)DOWN3
4260 PEEK#$C0
4270 LEN#$07
4280 (null)GETNUMBER+4
4290 (null)$A613;LINE>ADDY
4300 LEN#$01
4310 MID$($5F),Y
4320 (null)DOWN3
4330 ;
4340 DOWN2 (null)SEARCHNEX
4350 (null)SCROLLD
4360 DOWN3 (null)UDEND
4370 ;
4380 SCROLLD PEEK#0;SCROLL
4390 D1 MID$$0428,X
4400 (null)$0400,X
4410 (null)
4420 (null)D1
4430 D2 MID$$0528,X
4440 (null)$0500,X
4450 (null)
4460 (null)D2
4470 D3 MID$$0628,X
4480 (null)$0600,X
4490 (null)
4500 (null)D3
4510 PEEK#$40
4520 D4 MID$$06E8,X
4530 (null)$06C0,X
4540 (null)
4550 (null)D4
4560 (null)CL25TH
4570 PEEK#$00
4580 COPY2 MID$$D9,X
4590 ASC#$7F
4600 LEN$DA,X
4610 (null)*+4
4620 (null)#$80
4630 (null)$D9,X
4640 (null)
4650 TAN#$18
4660 (null)COPY2
4670 MID$$F1
4680 (null)#$80
4690 (null)$F1
4700 ;
4710 PCLOSE$D4,0
4720 (null)
4730 (null)PRINTLINE
4740 ;
4750 PCLOSE$DC00,$FE
4760 MID$#%00001000
4770 (null)$DC01
4780 (null)UDEND
4790 (null)DOWN2;AGAIN
4800 ;
4810 UDEND (null)LOADPOS
4820 ;
4830 ;
4840 ENDIRQ PCLOSE$C6,0
4850 (null)$D4
4860 NOKEY (null)
4870 PCLOSE$DC0D,$81
4880 (null)$EA81
4890 ;
4900 ;
4910 ;
4920 ; GET NUMBER
4930 ;==============================
4940 ;
4950 GETNUMBER PEEK#$00
4960 LEN#$04
4970 (null)$7A
4980 (null)$7B
4990 (null)CHARNORM
5000 PCLOSE$0300,<(ERROR)
5010 PCLOSE$0301,>(ERROR)
5020 (null)
5030 (null)ERROR+1
5040 ;
5050 (null)$AD8A
5060 (null)$B7F7
5070 ;
5080 ERRON PCLOSE$0300,$44
5090 PCLOSE$0301,$85
5100 (null)
5110 ;
5120 ERROR PEEK#$F3
5130 (null)
5140 (null)
5150 (null)
5160 (null)ERRON
5170 (null)ENDIRQ
5180 ;
5190 ;
5200 ;
5210 ; LINE-PRINT (C=1 / P=24)
5220 ;===============================
5230 ;
5240 SAVEPOS (null)$E513
5250 (null)LOADPOS+1
5260 (null)LOADPOS+3
5270 (null)
5280 ;
5290 PRINTLINE LEN#$00
5300 (null)*+5
5310 PEEK#$00
5320 FN$2C
5330 PEEK#24
5340 (null)$E50C
5350 (null)$9A44
5360 ;
5370 LOADPOS LEN#$00
5380 PEEK#$00
5390 (null)$E50C
5400 ;
5410 ;
5420 ;
5430 ; SEARCH PREV. / NEXT LINE
5440 ;===============================
5450 ;
5460 SEARCHBAC MID$$60;SEARCH
5470 (null)LASTHIGH;PREVIOUS
5480 CHR$$60;LINE
5490 LEN#$FE
5500 SEARCH MID$($5F),Y
5510 (null)FOUND
5520 SEARCH2 (null)
5530 (null)SEARCH
5540 ;
5550 FOUND (null)
5560 MID$($5F),Y
5570 STR$$5F
5580 (null)FOUND2
5590 (null)
5600 (null)SEARCH2
5610 ;
5620 FOUND2 (null)
5630 MID$($5F),Y
5640 STR$LASTHIGH
5650 (null)FOUND3
5660 (null)
5670 (null)
5680 (null)SEARCH2
5690 ;
5700 FOUND3 (null)
5710 (null)
5720 (null)
5730 VAL$5F
5740 (null)*+4
5750 RIGHT$$60
5760 (null)$5F
5770 (null)
5780 ;
5790 ;
5800 SEARCHNEX LEN#$00;SEARCH
5810 MID$($5F),Y;NEXT
5820 (null);LINE
5830 (null)
5840 MID$($5F),Y
5850 (null)$5F
5860 (null)$60
5870 MID$($5F),Y
5880 (null)
5890 ; CLOSE
5900 ; CLOSE
5910 ;
5920 ; VERSCHIEDENE UNTERPROGRAMME
5930 ;===============================
5940 ;
5950 CL25TH MID$#32;CLEAR
5960 PEEK#$27;25TH
5970 (null)$07C0,X;LINE
5980 (null)
5990 (null)*-4
6000 (null)
6010 ;
6020 CL1ST MID$#32;CLEAR
6030 PEEK#$27;1ST
6040 (null)$0400,X;LINE
6050 (null)
6060 (null)*-4
6070 CLRTS (null)
6080 ;
6090 ;
6100 ;
6110 CHARNORM MID$$CF;CHAR IN
6120 (null)CLRTS;NORMAL-
6130 MID$$CE;ZUSTAND
6140 PEEK$0287
6150 LEN#$00
6160 (null)$CF
6170 (null)$EA13
6180 ;
6190 ;
6200 ;
6210 GFKEY TAN#$03; F-KEY
6220 (null)GFEND; CHECK
6230 TAN#$07
6240 (null)GFEND
6250 LENFFLAG
6260 (null)GFEND
6270 (null)
6280 (null)
6290 (null)
6300 MID$#1
6310 (null)$028D;SHIFT
6320 (null)*+7
6330 MID$FTAB+4,X;MIT
6340 (null)*+5
6350 MID$FTAB,X;OHNE
6360 (null)$0277
6370 MID$#13
6380 (null)$0277+1
6390 PEEK#$02
6400 (null)$C6
6410 (null)FFLAG
6420 GFEND (null)NOKEY
6430 ;
6440 ;
6450 ;
6460 CHECKOLD MID$$2C
6470 STR$$2E
6480 (null)*+9
6490 MID$$2D
6500 (null)
6510 (null)$2B
6520 STR$#$02
6530 (null)
6540 ;
6550 ;
6560 ;
6570 SET4 MID$#0; $94D3
6580 (null)IRQFLAG;+$971D
6590 (null)$A560
6600 MID$#1
6610 (null)IRQFLAG
6620 (null)
6630 SETPGE PEEK#$00
6640 (null)$0340
6650 (null)$0350
6660 (null)
6670 (null)$0360
6680 (null)$0370
6690 (null)$8537
6700 ACHECK LEN$033D
6710 (null)*+5
6720 RIGHT$$033D
6730 LEN$033B
6740 (null)
6750 (null)$02FE
6760 (null)$974F
6770 ;
6780 ;
6790 ;
6800 ; POSITIONSSPEICHER, TEXT ....
6810 ;================================
6820 ;
6830 FFLAG
6840 FN0
6850 ;
6860 IRQFLAG
6870 FN0
6880 ;
6890 SAVEAD
6900 SPC(0
6910 XYPOS
6920 SPC(0
6930 ;
6940 FTAB
6950 NOT"IEXL
6960 [168]"@BYO
6970 ;
6980 TEXT
6990 NOT"__* GIGA-SCROLLEDIT V2_
7000 [168]"* BY CHRISTIAN THRUM
7010 NOT" 1993_"
7020 ;
7030 JUMPTAB1
7040 FN<(SAVE-1),<(LOAD-1)
7050 FN<(REBULID-1),<(GET-1)
7060 FN<(THPOS-1),<(HOME-1)
7070 FN<(SWAP-1)
7080 ;
7090 JUMPTAB2
7100 FN>(SAVE-1),>(LOAD-1)
7110 FN>(REBULID-1),>(GET-1)
7120 FN>(THPOS-1),>(HOME-1)
7130 FN>(SWAP-1)
7140 KEYTAB
7150 FN13,42,17,26,7,2,20
7160 ;
7170 ;
7180 ; ===============================
7190 ;
7200 ; YO! THIS IS THE WAY WE GO ....
7210 ;
7220 ; GIGA-SCROLLEDIT V2
7230 ; CODED BY CHRISTIAN THRUM
7240 ; (SKYWALKER OF SUNBEAM !)
7250 ; CLOSE
7260 ; CLOSE
7270 ; CLOSE
7280 ; ORTANTAN^
7290 ; (null)ORTANEXP
7300 ; (null)/TAN^
7310 ; /TAN^(null)UNBEAM PRODUCTIONS 1993
7320 ; ORTANEXP(null)
7330 ; /TANTANEXP
7340 ;